home *** CD-ROM | disk | FTP | other *** search
/ Business Assistant / Business Assistant.iso / home / bushome / budget.bas (.txt) < prev    next >
Encoding:
GW-BASIC  |  1984-10-28  |  6.0 KB  |  205 lines

  1. 3  KEY OFF
  2. 5  COLOR 2,8
  3. 10  REM new budget program
  4. 20  CLS: PRINT TAB(37)"BUDGET":PRINT
  5. 25  PRINT"  This program is copyrighted!  Exclusive rights to distribution have been"
  6. 30  PRINT"purchased by CMA SOFTWARE, Sterling, Virginia, USA.  Unauthorized copying for"
  7. 35  PRINT"any purpose; inclusion in disk-collections for sale, for sale separately, or"
  8. 40  PRINT"inclusion in software libraries for persons to borrow for copying is strictly"
  9. 45  PRINT"prohibited.  Violators will be prosecuted."
  10. 95  GOSUB 9010
  11. 200  CLS: PRINT TAB(34)"INSTRUCTIONS": GOSUB 9100
  12. 205  PRINT"1.  To print-out any screen use (shift) + (PrtSc) keys"
  13. 210  PRINT"2.  Use no more than 4 Income catagories"
  14. 215  PRINT"3.  Use no more than 10 Deduction catagories"
  15. 220  PRINT"4.  Use no more than 20 Fixed Expenses catagories"
  16. 225  PRINT"5.  Use no more than 30 Variable Expenses catagories":PRINT: GOSUB 9010
  17. 500  GOSUB 9000:PRINT:PRINT:PRINT
  18. 510  PRINT"Enter   (1)Weekly   (2)BiWeekly   (3)SemiMonthly   (4)Monthly":PRINT
  19. 515  INPUT PER: IF PER>4 GOTO 500
  20. 520  IF PER=1 THEN M=52
  21. 525  IF PER=2 THEN M=26
  22. 530  IF PER=3 THEN M=24
  23. 535  IF PER=4 THEN M=12
  24. 550  GOSUB 9000: PRINT"Enter gross income titles and amounts:": GOSUB 9100
  25. 560  PRINT"(Enter a '0' if not applicable)":PRINT
  26. 670  CL=CSRLIN: INPUT"Title:  ";IN1$: LOCATE CL,40: INPUT"Amount: ";IA1$
  27. 675  CL=CSRLIN: INPUT"Title:  ";IN2$: LOCATE CL,40: INPUT"Amount: ";IA2$
  28. 680  CL=CSRLIN: INPUT"Title:  ";IN3$: LOCATE CL,40: INPUT"Amount: ";IA3$
  29. 685  CL=CSRLIN: INPUT"Title:  ";IN4$: LOCATE CL,40: INPUT"Amount: ";IA4$
  30. 688  TOTIN=VAL(IA1$)+VAL(IA2$)+VAL(IA3$)+VAL(IA4$)
  31. 690  PRINT:PRINT"  TOTAL INCOME:";TAB(49)"$";TOTIN
  32. 695  IF FLAG>1 AND FLAG<6 GOTO 4000
  33. 697  IF FLAG>5 GOTO 6000
  34. 700  GOSUB 9010
  35. 1000  GOSUB 9000:PRINT"Enter Fixed Deductions and Amounts:": GOSUB 9100
  36. 1005  TOTD=0
  37. 1010  INPUT"How many deductions catagories ";FD
  38. 1020  FOR X=1 TO FD
  39. 1030  CL=CSRLIN: INPUT"Title:  ";FD$(X,1):LOCATE CL,50: INPUT "Amount: ";FD$(X,2)
  40. 1040  TOTD=TOTD+VAL(FD$(X,2))
  41. 1050  NEXT X
  42. 1060  GOSUB 9100: PRINT"Total Deductions:";TAB(38)"$";TOTD
  43. 1070  GOSUB 9200
  44. 1080  IF FLAG=0 GOTO 1000
  45. 2000  GOSUB 9000: PRINT"Enter Fixed Expenses and Amounts:": GOSUB 9100
  46. 2005  TOTFE=0
  47. 2010  INPUT"How many Catagories ";FX
  48. 2020  FOR X=1 TO FX
  49. 2030  CL=CSRLIN: INPUT"Title:  ";FX$(X,1):LOCATE CL,50: INPUT "Amount: ";FX$(X,2)
  50. 2040  TOTFX=TOTFX+VAL(FX$(X,2))
  51. 2050  NEXT X
  52. 2060  GOSUB 9100: PRINT"Total Fixed Expenses:";TAB(38)"$";TOTFX
  53. 2070  GOSUB 9200
  54. 2080  IF FLAG=0 GOTO 2000
  55. 3000  GOSUB 9000:PRINT"Enter Variable Expenses and Amounts:": GOSUB 9100
  56. 3005  TOTVE=0
  57. 3010  INPUT"How many Catagories ";VX
  58. 3020  FOR X=1 TO VX
  59. 3030  CL=CSRLIN: INPUT"Title:  ";VX$(X,1):LOCATE CL,50: INPUT "Amount: ";VX$(X,2)
  60. 3040  TOTVX=TOTVX+VAL(VX$(X,2))
  61. 3050  NEXT X
  62. 3060  GOSUB 9100: PRINT"Total Variable Expenses:";TAB(38)"$";TOTVX
  63. 3070  GOSUB 9200
  64. 3080  IF FLAG=0 GOTO 3000
  65. 4000  GOSUB 9000: PRINT TAB(20)"Period: ";PER$;TAB(70)"Page 1": GOSUB 9100
  66. 4005  TOTIN=VAL(IA1$)+VAL(IA2$)+VAL(IA3$)+VAL(IA4$)
  67. 4010  IF IN1$="" GOTO 4020
  68. 4015  PRINT IN1$;TAB(40)"$ ";IA1$
  69. 4020  IF IN2$="" GOTO 4030
  70. 4025  PRINT IN2$;TAB(42)IA2$
  71. 4030  IF IN3$="" GOTO 4040
  72. 4035  PRINT IN3$;TAB(42)IA3$
  73. 4040  IF IN4$="" GOTO 4050
  74. 4045  PRINT IN4$;TAB(42)IA4$
  75. 4050  PRINT"  TOTAL GROSS INCOME:";TAB(40)"$";TOTIN
  76. 4060  PRINT
  77. 4070  PRINT"Deductions:";TAB(40)"$";TOTD
  78. 4080  PRINT"Fixed Expenses:";TAB(42)TOTFX
  79. 4090  PRINT"Variable Expenses:";TAB(42)TOTVX:PRINT
  80. 4100  TDE=TOTD+TOTFX+TOTVX
  81. 4110  PRINT "  TOTAL DEDUCTIONS & EXPENSES:";TAB(40);"$";TDE:PRINT
  82. 4120  PRINT"Review:   <I>ncome  <D>eductions  <F>ixed exp.  <V>ariable exp.  <S>ummary"
  83. 4130  A$=INKEY$: IF A$="" GOTO 4130
  84. 4135  IF A$="s" GOTO 6000
  85. 4140  IF A$="i" GOTO 4200
  86. 4145  IF A$="d" GOTO 4300
  87. 4150  IF A$="f" GOTO 4400
  88. 4155  IF A$="v" GOTO 4500
  89. 4160  GOTO 4130
  90. 4200  GOSUB 9000: PRINT"REVIEW INCOME:": GOSUB 9100
  91. 4205  PRINT IN1$;TAB(40)"$";IA1$
  92. 4210  PRINT IN2$;TAB(42)IA2$
  93. 4215  PRINT IN3$;TAB(42)IA3$
  94. 4220  PRINT IN4$;TAB(42)IA4$
  95. 4225  PRINT "  TOTAL INCOME:";TAB(40)"$"TOTIN
  96. 4230  PRINT:PRINT"To change press 'C'  Return press 'R'"
  97. 4290  A$=INKEY$:IF A$="" GOTO 4290
  98. 4292  IF A$="c" THEN FLAG=2: GOTO 500
  99. 4293  IF A$="r" GOTO 4000
  100. 4295  GOTO 4290
  101. 4300  GOSUB 9000: PRINT"REVIEW DEDUCTIONS:": GOSUB 9100
  102. 4305  FOR X=1 TO FD
  103. 4310  PRINT FD$(X,1);TAB(40)"$";FD$(X,2)
  104. 4315  NEXT X
  105. 4320  PRINT"  TOTAL DEDUCTIONS:";TAB(40)"$";TOTD:PRINT
  106. 4325  PRINT"<C>hange   <M>enu"
  107. 4330  A$=INKEY$: IF A$="" GOTO 4330
  108. 4335  IF A$="c" GOTO 5300
  109. 4340  IF A$="m" GOTO 4000
  110. 4345  GOTO 4330
  111. 4400  GOSUB 9000: PRINT"REVIEW FIXED EXPENSES:": GOSUB 9100
  112. 4405  FOR X=1 TO FX
  113. 4410  PRINT FX$(X,1);TAB(40)"$";FX$(X,2)
  114. 4413  IF X=15 GOTO 4700
  115. 4415  NEXT X
  116. 4420  PRINT"  TOTAL FIXED EXPENSES:";TAB(40)"$";TOTFX:PRINT
  117. 4425  PRINT"<C>hange   <M>enu"
  118. 4430  A$=INKEY$: IF A$="" GOTO 4430
  119. 4435  IF A$="c" GOTO 5400
  120. 4440  IF A$="m" GOTO 4000
  121. 4445  GOTO 4430
  122. 4500  GOSUB 9000: PRINT"REVIEW VARIABLE EXPENSES:": GOSUB 9100
  123. 4505  FOR X=1 TO VX
  124. 4510  PRINT VX$(X,1);TAB(40)"$";VX$(X,2)
  125. 4513  IF X=15 GOTO 4600
  126. 4515  NEXT X
  127. 4520  PRINT"  TOTAL VARIABLE EXPENSES:";TAB(40)"$";TOTVX:PRINT
  128. 4525  PRINT"<C>hange   <M>enu"
  129. 4530  A$=INKEY$: IF A$="" GOTO 4530
  130. 4535  IF A$="c" GOTO 5500
  131. 4540  IF A$="m" GOTO 4000
  132. 4545  GOTO 4530
  133. 4600  PRINT"<N>ext page   <C>hange   <M>enu"
  134. 4610  A$=INKEY$: IF A$="" GOTO 4610
  135. 4620  IF A$=" " THEN CLS: PRINT"REVIEW VARIABLE EXPENSES:": GOTO 4515
  136. 4630  IF A$="c" GOTO 5500
  137. 4640  IF A$="m" GOTO 4000
  138. 4650  GOTO 4610
  139. 4700  PRINT"<N>ext page   <C>hange   <M>enu"
  140. 4710  A$=INKEY$: IF A$="" GOTO 4710
  141. 4720  IF A$=" " THEN CLS: PRINT"REVIEW FIXED EXPENSES:": GOTO 4415
  142. 4730  IF A$="c" GOTO 5400
  143. 4740  IF A$="m" GOTO 4000
  144. 4750  GOTO 4710
  145. 5300  LOCATE CL,1: PRINT"                                                                               ": LOCATE CL,1: INPUT"Change which number ";CN
  146. 5305  FOR X=1 TO FD
  147. 5310  IF CN=X GOTO 5325
  148. 5315  NEXT X
  149. 5320  GOTO 4300
  150. 5325  CLS: PRINT FD$(X,1);TAB(40)FD$(X,2)
  151. 5327  TOTD=TOTD-VAL(FD$(CN,2))
  152. 5330  INPUT"Title:  ";FD$(CN,1)
  153. 5335  INPUT"Amount: ";FD$(CN,2)
  154. 5338  TOTD=TOTD+VAL(FD$(CN,2))
  155. 5340  GOTO 4300
  156. 5400  LOCATE CL,1: PRINT"                                                                               ": LOCATE CL,1: INPUT"Change which number ";CN
  157. 5405  FOR X=1 TO FX
  158. 5410  IF CN=X GOTO 5425
  159. 5415  NEXT X
  160. 5420  GOTO 4400
  161. 5425  CLS: PRINT FX$(X,1);TAB(40)FX$(X,2)
  162. 5427  TOTFX=TOTFX-VAL(FX$(CN,2))
  163. 5430  INPUT"Title:  ";FX$(CN,1)
  164. 5435  INPUT"Amount: ";FX$(CN,2)
  165. 5438  TOTFX=TOTFX+VAL(FX$(CN,2))
  166. 5440  GOTO 4400
  167. 5500  LOCATE CL,1: PRINT"                                                                               ": LOCATE CL,1: INPUT"Change which number ";CN
  168. 5505  FOR X=1 TO VX
  169. 5510  IF CN=X GOTO 5525
  170. 5515  NEXT X
  171. 5520  GOTO 4500
  172. 5525  CLS: PRINT VX$(X,1);TAB(40)VX$(X,2)
  173. 5527  TOTVX=TOTVX-VAL(VX$(CN,2))
  174. 5530  INPUT"Title:  ";VX$(CN,1)
  175. 5535  INPUT"Amount: ";VX$(CN,2)
  176. 5538  TOTVX=TOTVX+VAL(VX$(CN,2))
  177. 5540  GOTO 4500
  178. 6000  GOSUB 9000: PRINT "                 Summary:": GOSUB 9100
  179. 6005  CTOTIN=TOTIN*M
  180. 6010  CTOTD=TOTD*M
  181. 6015  CTOTFX=TOTFX*M
  182. 6020  CTOTVX=TOTVX*M
  183. 6025  SURP=TOTIN-(TOTD+TOTFX+TOTVX): CSURP=CTOTIN-(CTOTD+CTOTFX+CTOTVX)
  184. 6100  PRINT "  Item";TAB(40)PER$;TAB(60)"Yearly"
  185. 6105  PRINT
  186. 6110  PRINT"Income:";TAB(38)"$";TOTIN;TAB(58)"$";CTOTIN
  187. 6120  PRINT"Deductions:";TAB(40)TOTD;TAB(60);CTOTD
  188. 6130  PRINT"Fixed Expenses:";TAB(40)TOTFX;TAB(60)CTOTFX
  189. 6140  PRINT"Variable Expenses:";TAB(40)TOTVX;TAB(60)CTOTVX
  190. 6150  GOSUB 9100
  191. 6160  PRINT"Surplus:";TAB(38)"$";SURP;TAB(58)"$";CSURP
  192. 6200  GOSUB 9010
  193. 6210  GOTO 4000
  194. 8999  STOP
  195. 9000  CLS:PRINT"BUDGET": RETURN
  196. 9010  PRINT TAB(33)"Press any key"
  197. 9015  A$=INKEY$: IF A$="" GOTO 9015
  198. 9020  RETURN
  199. 9100  PRINT"-------------------------------------------------------------------------------": RETURN
  200. 9200  INPUT"Correct (y/n) ";CR$
  201. 9210  IF CR$="n" THEN FLAG=0
  202. 9220  IF CR$="y" THEN FLAG=1
  203. 9230  IF CR$<>"n" AND CR$<>"y" GOTO 9200
  204. 9240  RETURN
  205.